package so.sao.code.service.infrastructure.model.vo;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonInclude;

/**
 * Created by Administrator on 2017/7/18.
 */
public class TagBatchConfigVO implements Serializable {
    /**
     *
     */
    private static final long serialVersionUID = 1606522601829499162L;

    /**
     * 格式名称
     */
    private String name = "";
    /**
     * 印刷厂id（预计没有实际意义，暂时不用）
     */
    private Long printFactoryId = 0L;
    /**
     * 终端id（预计没有实际意义，暂时不用）
     */
    private Long terminalId = 0L;
    /**
     * 每行标签个数，即列数
     */
    private Integer tagCountPerLine = 0;
    /**
     * 排列方向，1.横向排列，2.竖向排列 refer to so.sao.code.enums.PrintFileSortDirection
     */
    private Integer direction = 0;
    /**
     * 字段内容及顺序设置
     */
    private List<String> fieldsConfigs = new ArrayList<>();
    /**
     * 字段中文
     */
    private List<List<EnterpriseCustomFieldVO>> fieldsConfigsName=new ArrayList<>();
    /**
     * 文件格式（目前支持csv和txt）
     */
    private String fileType = "";
    /**
     * 下载方式（1.外链生成，2.直接下载，3在线下载）
     */
    private Integer downloadMethod = 0;
    /**
     * 批次id
     */

    private String urlDomain = "";
    private Long tagBatchId = 0L;
    private boolean isPlatform = true;
    @JsonInclude
    private String  printFactoryName="";
    @JsonInclude
    private String  terminalName="";
    /**
     * 加密方式（1.普通加密，2.高级加密）
     */
    private Integer  encryptionMethod=0;
    
	public String getPrintFactoryName() {
		return printFactoryName;
	}

	public void setPrintFactoryName(String printFactoryName) {
		this.printFactoryName = printFactoryName;
	}

	public String getTerminalName() {
		return terminalName;
	}

	public void setTerminalName(String terminalName) {
		this.terminalName = terminalName;
	}

	public List<List<EnterpriseCustomFieldVO>> getFieldsConfigsName() {
		return fieldsConfigsName;
	}

	public void setFieldsConfigsName(List<List<EnterpriseCustomFieldVO>> fieldsConfigsName) {
		this.fieldsConfigsName = fieldsConfigsName;
	}

	public boolean isPlatform() {
		return isPlatform;
	}

	public void setPlatform(boolean isPlatform) {
		this.isPlatform = isPlatform;
	}

	public List<String> getFieldsConfigs() {
        return fieldsConfigs;
    }

    public void setFieldsConfigs(List<String> fieldsConfigs) {
        this.fieldsConfigs = fieldsConfigs;
    }

    public String getUrlDomain() {
        return urlDomain;
    }

    public void setUrlDomain(String urlDomain) {
        this.urlDomain = urlDomain;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Long getPrintFactoryId() {
        return printFactoryId;
    }

    public void setPrintFactoryId(Long printFactoryId) {
        this.printFactoryId = printFactoryId;
    }

    public Long getTerminalId() {
        return terminalId;
    }

    public void setTerminalId(Long terminalId) {
        this.terminalId = terminalId;
    }

    public Integer getTagCountPerLine() {
        return tagCountPerLine;
    }

    public void setTagCountPerLine(Integer tagCountPerLine) {
        this.tagCountPerLine = tagCountPerLine;
    }

    public Integer getDirection() {
        return direction;
    }

    public void setDirection(Integer direction) {
        this.direction = direction;
    }

    public String getFileType() {
        return fileType;
    }

    public void setFileType(String fileType) {
        this.fileType = fileType;
    }

    public Integer getDownloadMethod() {
        return downloadMethod;
    }

    public void setDownloadMethod(Integer downloadMethod) {
        this.downloadMethod = downloadMethod;
    }

    public Long getTagBatchId() {
        return tagBatchId;
    }

    public void setTagBatchId(Long tagBatchId) {
        this.tagBatchId = tagBatchId;
    }

	public Integer getEncryptionMethod() {
		return encryptionMethod;
	}

	public void setEncryptionMethod(Integer encryptionMethod) {
		this.encryptionMethod = encryptionMethod;
	}
}
